package com.ys.entity.overseas;
import java.math.BigDecimal;
import java.util.Date;
import javax.persistence.Table;
import com.alibaba.fastjson.annotation.JSONField;
import com.ys.annotation.YsField;
import com.ys.entity.base.BaseEntity;
/**
*/
@Table(name="TOS_ProductBasis", catalog="Id")
public class TosProductBasis extends BaseEntity<TosProductBasis> {

	@YsField(nameDataBase="Id", nameJava="id", typeDataBase="bigint")
	private Long id;
	@YsField(nameDataBase="Code", nameJava="code", typeDataBase="varchar")
	private String code;
	@YsField(nameDataBase="FromCode", nameJava="fromCode", typeDataBase="varchar")
	private String fromCode;
	@YsField(nameDataBase="SignCode", nameJava="signCode", typeDataBase="varchar")
	private String signCode;
	@YsField(nameDataBase="ProductName", nameJava="productName", typeDataBase="varchar")
	private String productName;
	@YsField(nameDataBase="ProductImg", nameJava="productImg", typeDataBase="varchar")
	private String productImg;
	@YsField(nameDataBase="ProductTitle", nameJava="productTitle", typeDataBase="varchar")
	private String productTitle;
	@YsField(nameDataBase="ProductCategory", nameJava="productCategory", typeDataBase="varchar")
	private String productCategory;
	@YsField(nameDataBase="PurchaseAmount", nameJava="purchaseAmount", typeDataBase="decimal")
	private BigDecimal purchaseAmount;
	@YsField(nameDataBase="DeliveryAmount", nameJava="deliveryAmount", typeDataBase="decimal")
	private BigDecimal deliveryAmount;
	@YsField(nameDataBase="SuggestAmount", nameJava="suggestAmount", typeDataBase="decimal")
	private BigDecimal suggestAmount;
	@YsField(nameDataBase="ProfitAmount", nameJava="profitAmount", typeDataBase="decimal")
	private BigDecimal profitAmount;
	@YsField(nameDataBase="ProfitRatio", nameJava="profitRatio", typeDataBase="decimal")
	private BigDecimal profitRatio;
	@YsField(nameDataBase="PlatformId", nameJava="platformId", typeDataBase="bigint")
	private Long platformId;
	@YsField(nameDataBase="CreateChangeId", nameJava="createChangeId", typeDataBase="bigint")
	private Long createChangeId;
	@YsField(nameDataBase="Status", nameJava="status", typeDataBase="tinyint")
	private Integer status;
	@JSONField(format = "yyyy-MM-dd HH:mm:ss")
	@YsField(nameDataBase="CreateTime", nameJava="createTime", typeDataBase="datetime")
	private Date createTime;
	@JSONField(format = "yyyy-MM-dd HH:mm:ss")
	@YsField(nameDataBase="UpdateTime", nameJava="updateTime", typeDataBase="datetime")
	private Date updateTime;

	public Long getId() {
		return id;
	}
	public TosProductBasis setId(Long id) {
		this.id = id;
		return this;
	}
	public String getCode() {
		return code;
	}
	public TosProductBasis setCode(String code) {
		this.code = code;
		return this;
	}
	public String getFromCode() {
		return fromCode;
	}
	public TosProductBasis setFromCode(String fromCode) {
		this.fromCode = fromCode;
		return this;
	}
	public String getSignCode() {
		return signCode;
	}
	public TosProductBasis setSignCode(String signCode) {
		this.signCode = signCode;
		return this;
	}
	public String getProductName() {
		return productName;
	}
	public TosProductBasis setProductName(String productName) {
		this.productName = productName;
		return this;
	}
	public String getProductImg() {
		return productImg;
	}
	public TosProductBasis setProductImg(String productImg) {
		this.productImg = productImg;
		return this;
	}
	public String getProductTitle() {
		return productTitle;
	}
	public TosProductBasis setProductTitle(String productTitle) {
		this.productTitle = productTitle;
		return this;
	}
	public String getProductCategory() {
		return productCategory;
	}
	public TosProductBasis setProductCategory(String productCategory) {
		this.productCategory = productCategory;
		return this;
	}
	public BigDecimal getPurchaseAmount() {
		return purchaseAmount;
	}
	public TosProductBasis setPurchaseAmount(BigDecimal purchaseAmount) {
		this.purchaseAmount = purchaseAmount;
		return this;
	}
	public BigDecimal getDeliveryAmount() {
		return deliveryAmount;
	}
	public TosProductBasis setDeliveryAmount(BigDecimal deliveryAmount) {
		this.deliveryAmount = deliveryAmount;
		return this;
	}
	public BigDecimal getSuggestAmount() {
		return suggestAmount;
	}
	public TosProductBasis setSuggestAmount(BigDecimal suggestAmount) {
		this.suggestAmount = suggestAmount;
		return this;
	}
	public BigDecimal getProfitAmount() {
		return profitAmount;
	}
	public TosProductBasis setProfitAmount(BigDecimal profitAmount) {
		this.profitAmount = profitAmount;
		return this;
	}
	public BigDecimal getProfitRatio() {
		return profitRatio;
	}
	public TosProductBasis setProfitRatio(BigDecimal profitRatio) {
		this.profitRatio = profitRatio;
		return this;
	}
	public Long getPlatformId() {
		return platformId;
	}
	public TosProductBasis setPlatformId(Long platformId) {
		this.platformId = platformId;
		return this;
	}
	public Long getCreateChangeId() {
		return createChangeId;
	}
	public TosProductBasis setCreateChangeId(Long createChangeId) {
		this.createChangeId = createChangeId;
		return this;
	}
	public Integer getStatus() {
		return status;
	}
	public TosProductBasis setStatus(Integer status) {
		this.status = status;
		return this;
	}
	public Date getCreateTime() {
		return createTime;
	}
	public TosProductBasis setCreateTime(Date createTime) {
		this.createTime = createTime;
		return this;
	}
	public Date getUpdateTime() {
		return updateTime;
	}
	public TosProductBasis setUpdateTime(Date updateTime) {
		this.updateTime = updateTime;
		return this;
	}

	public static TosProductBasis tosProductBasis(
		String code,
		String fromCode,
		String signCode,
		String productName,
		String productImg,
		String productTitle,
		String productCategory,
		BigDecimal purchaseAmount,
		BigDecimal deliveryAmount,
		BigDecimal suggestAmount,
		BigDecimal profitAmount,
		BigDecimal profitRatio,
		Long platformId,
		Long createChangeId,
		Integer status
			) {
		TosProductBasis entity = new TosProductBasis();
		entity.setCode(code);
		entity.setFromCode(fromCode);
		entity.setSignCode(signCode);
		entity.setProductName(productName);
		entity.setProductImg(productImg);
		entity.setProductTitle(productTitle);
		entity.setProductCategory(productCategory);
		entity.setPurchaseAmount(purchaseAmount);
		entity.setDeliveryAmount(deliveryAmount);
		entity.setSuggestAmount(suggestAmount);
		entity.setProfitAmount(profitAmount);
		entity.setProfitRatio(profitRatio);
		entity.setPlatformId(platformId);
		entity.setCreateChangeId(createChangeId);
		entity.setStatus(status);
		return entity;
	}
}